#include <Wire.h>

const int icaddr = 0x20;

void setup()   {                
  Serial.begin(9600);
  Wire.begin();
}

void loop() {

  if (test(icaddr)==0) {
    int data = expanderRead(icaddr); 
    
    if(data==-1)   {
	  Serial.println("No Read !");  
	  delay(500);
    }
    else {  
	  for(int i=0; i<8; i++)  
	    Serial.print(bitRead(data,i));
	  Serial.println(" ");
    }  
  }
  else
  {
     Serial.println("Gerät nicht gefunden"); 
  }
  delay(500);   
}

byte expanderRead(int i2caddr) {
  int _data = -1;
  Wire.requestFrom(i2caddr, 1);
  if(Wire.available()) {
    _data = Wire.read();
  }
  return _data;
}

byte test(int i2caddr) {
  Wire.beginTransmission(i2caddr);
  return Wire.endTransmission();
}

